package com.rockcent.mall.lib.dto;

import com.rockcent.common.domain.DtoEntity;
import com.rockcent.common.domain.IDEntityMall;
import com.rockcent.mall.lib.domain.MallMemberRechargeFlow;
import com.rockcent.mall.lib.domain.enumclass.MallMemberStatus;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 会员账号
 * Created by zhangjh on 2017/03/07.
 */
public class MallMemberDto extends DtoEntity {

    /**
     * 平台ID
     */
    private Long mallId;

    /**
     * 账户余额
     */
    private BigDecimal balance;

    /**
     * 试用开始时间
     */
    private Date dateEnabled;

    /**
     * 试用结束时间
     */
    private Date dateDisabled;

    /**
     * 累计试用天数
     */
    private Long probationaryPeriodDays;

    /**
     * 平台会员状态
     */
    private String memberStatus;

    /**
     * 备注
     */
    private String remark;

    /**
     * 充值记录
     */
    private MallMemberRechargeFlow rechargeFlow;

    private String mallName;

    private String companyName;

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Long getMallId() {
        return mallId;
    }

    public void setMallId(Long mallId) {
        this.mallId = mallId;
    }

    public BigDecimal getBalance() {
        return balance;
    }

    public void setBalance(BigDecimal balance) {
        this.balance = balance;
    }

    public Date getDateEnabled() {
        return dateEnabled;
    }

    public void setDateEnabled(Date dateEnabled) {
        this.dateEnabled = dateEnabled;
    }

    public Date getDateDisabled() {
        return dateDisabled;
    }

    public void setDateDisabled(Date dateDisabled) {
        this.dateDisabled = dateDisabled;
    }

    public Long getProbationaryPeriodDays() {
        return probationaryPeriodDays;
    }

    public void setProbationaryPeriodDays(Long probationaryPeriodDays) {
        this.probationaryPeriodDays = probationaryPeriodDays;
    }

    public String getMemberStatus() {
        return memberStatus;
    }

    public void setMemberStatus(String memberStatus) {
        this.memberStatus = memberStatus;
    }

    public MallMemberRechargeFlow getRechargeFlow() {
        return rechargeFlow;
    }

    public void setRechargeFlow(MallMemberRechargeFlow rechargeFlow) {
        this.rechargeFlow = rechargeFlow;
    }

    public String getMallName() {
        return mallName;
    }

    public void setMallName(String mallName) {
        this.mallName = mallName;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    @Override
    public String toString() {
        return "MallMemberDto{" +
                "mallId=" + mallId +
                ", balance=" + balance +
                ", dateEnabled=" + dateEnabled +
                ", dateDisabled=" + dateDisabled +
                ", probationaryPeriodDays=" + probationaryPeriodDays +
                ", memberStatus='" + memberStatus + '\'' +
                ", remark='" + remark + '\'' +
                ", rechargeFlow=" + rechargeFlow +
                ", mallName='" + mallName + '\'' +
                ", companyName='" + companyName + '\'' +
                '}';
    }
}
